On the hosts that have multiple egress interfaces, applications that need to steer traffic via a specific egress interface need to explicitly bind to the interface. The applications have to include code to perform route look up, select an interface for sending packets to a particular destination, and bind the socket to the selected interface.
In addition, when there are multiple interfaces that an application could use to send a packet to a destination, the application has to bind to each interface one by one based on the destination IP for route reachability. The application has to also include code to choose one of the interfaces by load balancing, round robin selection, or other methods.